1. Field of the Invention
The present invention relates to a network communication field and especially to a device and a method for data communication in which a communication is performed by using a protocol, such as a transmission control protocol/internet protocol (TCP/IP), by which data is transmitted and received in a byte stream.
2. Description of the Related Art
A data communication by a TCP/IP is widely used in a network communication. In the TCP/IP, a receiving end transmits a reception confirming notification (acknowledge) indicating to what extent data is received to a transmitting end in a data communication. The data transmitting end is configured to control a transmission of data by receiving the acknowledge and retransmit the data when not receiving the acknowledge within a predetermined period of time to perform a precise data communication. It is therefore necessary at the transmitting end to retain the data which is even transmitted already once until receiving the acknowledge from the receiving end.
It has been common in conventional techniques that a processing of the retention of such transmission data is performed in a data transmission circuit depending on a transmission frame format. In this case, it is necessary to retain all pieces of the transmission data before receiving the acknowledge from the receiving end in the data transmission circuit. For this reason, the data transmission circuit is required to secure a buffer with a capacity necessary for retaining the transmission data and especially a high-speed data communication processing comes to require a high-capacity transmission buffer.
In a data processing related to the data communication, there have been a variety of proposals. For example, Japanese Laid-open Patent Publication No. 2010-166401 discloses a technique, in a transmission by frame over a plurality of channels, of assigning a sequence number to each divided frame and transmitting the frame to another wireless terminal. Besides, Japanese Laid-open Patent Publication No. 2005-148904 discloses a ring buffer controlling method in which a pointer is managed by a bit count which is obtained by adding one bit to an address bit count determined depending on a size of a ring buffer, the bit added in counting up the bit count from an end address of the ring buffer and returning to a head address is inverted, and a pointer for writing and a pointer for reading are compared to detect whether the ring buffer is full or empty.
While it is required to realize a high-speed performance, which is one of merits in the case of realizing the function corresponding to the TCP/IP by hardware, in communication, there is a problem that a buffer with significantly high capacity is required for a transmission processing and causes a high cost.
Therefore, there is a need for a data communication device capable of balancing high-speed performance in data communication and cost by a transmission control by using a transmission buffer of a ring buffer format.